package com.zs.toolbox.web2j.system.core.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.zs.toolbox.web2j.common.domain.WtBaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.time.LocalDateTime;

/**
 * <p>
 * 
 * </p>
 *
 * @author eric.zhang
 * @since 2018-10-11
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("t_post_detail")
@ApiModel(value="WtPostDetailEntity对象", description="")
public class WtPostDetailEntity extends WtBaseEntity {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "文章ID")
    @TableId(value = "post_id", type = IdType.AUTO)
    private Long postId;

    @ApiModelProperty(value = "用户ID")
    @TableField("user_id")
    private Long userId;

    @ApiModelProperty(value = "推送内容类型")
    @TableField("post_type")
    private String postType;

    @ApiModelProperty(value = "推送内容")
    @TableField("post_content")
    private String postContent;

    @ApiModelProperty(value = "推送标题")
    @TableField("post_title")
    private String postTitle;

    @ApiModelProperty(value = "推送摘要")
    @TableField("post_excerpt")
    private String postExcerpt;

    @ApiModelProperty(value = "推送状态")
    @TableField("post_status")
    private String postStatus;

    @ApiModelProperty(value = "评论开关")
    @TableField("comment_status")
    private String commentStatus;

    @ApiModelProperty(value = "评论数")
    @TableField("comment_count")
    private Long commentCount;

    @ApiModelProperty(value = "阅读数")
    @TableField("read_count")
    private Long readCount;

    @ApiModelProperty(value = "点赞数")
    @TableField("like_count")
    private Long like_count;

    @ApiModelProperty(value = "推送上级ID")
    @TableField("post_parent")
    private Long postParent;

    @TableField("create_date")
    private LocalDateTime createDate;

    @TableField(value = "update_time", update = "now()", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;

    @TableField("delete_status")
    @TableLogic
    private Integer deleteStatus;

}
